package com.nts.visionworks.business.contents.domain;

import java.util.HashMap;
import java.util.Map;

/**
 * 컨텐츠 속성 입력 시 관리자가 사용하게 되는 HTML 입력폼의 유형을 나타내는 열거형을 정의한다. 해당 열거형은 int 타입을 기반으로 한다.
 * @author Devcken
 */
public enum InputType
{
	/**
	 * 텍스트 박스 HTML 입력폼
	 */
	TextBox((short)0),
	
	/**
	 * 셀렉트 박스 HTML 입력폼
	 */
	SelectBox((short)1),
	
	/**
	 * 라디오 버튼 HTML 입력폼
	 */
	RadioButton((short)2),
	
	/**
	 * 체크 박스 HTML 입력폼
	 */
	CheckBox((short)3);
	
	public final short value;
	
	private static final Map<Short, InputType> _map = new HashMap<Short, InputType>();
	
	static
	{
		for (InputType item : InputType.values())
		{
			_map.put(item.value, item);
		}
	}
	
	private InputType(short value)
	{
		this.value = value;
	}

	public short value()
	{
		return this.value;
	}
	
	public static InputType convert(short value)
	{
		return _map.get(value);
	}
}